package com.ruoyi.health.report.domain.zkxc;

import com.ruoyi.common.core.enums.ImageFieldEnum;
import com.ruoyi.health.report.action.SaveImageAction;
import lombok.Data;

import java.util.List;

/**
 * @author ChenYF
 * @date 2025-09-03 9:33
 */
@Data
public class MzPushEntity {
    private String treatmentPrinciplesForViscera;
    private String treatmentPrinciplesForMeridian;
    private String visceraPlan;
    private String visceraResult;
    private String meridianPlan;
    private String meridianResult;
    private String diseaseRisk;
    private String totalPulseFeatureDesc;
    private Integer pointIndex;
    private String symptomTips;
    @SaveImageAction(imageKey = ImageFieldEnum.MERIDIAN_COLD_HEAT_BIT_MAP)
    private String meridianColdHeatBitmap;
    private String factorEnumeration;
    @SaveImageAction(imageKey = ImageFieldEnum.PULSE_DEVIATION_IMG)
    private String pulseDeviationImg;

    private QieMaiData leftCun;
    private QieMaiData leftGuan;
    private QieMaiData leftChi;

    private QieMaiData rightCun;
    private QieMaiData rightGuan;
    private QieMaiData rightChi;

    private List<Acupoint> acupointList;
    private List<VisceralAndMeridian> visceraAndMeridianChart;
    private MPulseDiagnosis mPulseDiagnosisEntity;
    private List<Prescriptions> prescriptions;

    @Data
    private class Acupoint {
        private String acupoint; // "足三里",
        private String location; // "犊鼻下3寸，犊鼻与解溪连线上。",
        @SaveImageAction(imageKey = ImageFieldEnum.IMG_BIT_MAP)
        private String imgBitmap; // "",
        private String treatment; // "医疗方案：直刺1-2寸；艾炷灸5-10壮；或艾条灸10-20分钟。",
        private String physiotherapy; // "理疗方案：穴位按压3-5分钟。"
    }

    @Data
    private class MPulseDiagnosis {
        private Integer id; // 11,
        private String pulseState; // "虚",
        private String zangFuAnalysis; // "本证多因大肠阳气虚衰，不能固摄而致。因久泻久痢伤阳，阳气虚衰，大肠失其”懒，故下利无度，甚至大便失禁、脱肛；阳虚阴盛，胞内生，寒凝气滞，故见腹痛隐隐，喜温喜按等症状，常出现在泄泻、霍乱等疾病中。",
        private String commonSymptoms; // "腹痛隐隐，喜温喜按等",
        private String diseaseRisk; // "泄泻、中暑等",
        private String syndromeTypes; // "肠虚滑泄证",
        private String syndromeFeatures; // "大肠 虚证",
        private String pulsePosition; // "右寸腑脉"
    }

    @Data
    private class Prescriptions {
        private Integer id; // 17,
        private String formula3; // "举元煎 《景岳全书》",
        private String syndromeType; // "肠虚滑泄证",
        private String formula3Composition; // "人参、黄芪、炙甘草、升麻、白术",
        private String formula2; // "补中益气汤 《脾胃论》",
        private String formula1Composition; // "人参、当归、白术、肉豆蔻、肉桂、甘草、白芍、木香、诃子、罂粟壳",
        private String formula2Composition; // "黄芪、白术、陈皮、升麻、柴胡、人参、甘草、当归",
        private String treatmentMethod; // "温补阳气，涩肠固脱",
        private String formula1; // "真人养脏汤 《太平惠民和剂局方》"
    }
}
